<template>
	<view>
		<dialog-shell title="用户登录" confirm-text="登录" ref="shell" @confirm = "confirmLogin">
			<image src="../../static/icons(1)/icon.png" mode="" class="icon"></image>
			<text class="welcome">WELCOME</text>
			<text class="info-register" @click="clickGoRegister">没有账户？请注册</text>
			<view class="login-container">
				<input placeholder="请输入账户" placeholder-class="input-holder" :value="usrValue" @input="inputGetUser">
				<text class="iconfont icon-yonghu-yuan ic-user" ></text>
			</view>
			<view class="login-container">
				<input v-if="isPwd" :value="pwdValue" type="password" placeholder="请输入密码" placeholder-class="input-holder"
				 @input="inputGetPwd">
				<input v-else :value="pwdValue" type="text" placeholder="请输入密码" placeholder-class="input-holder" @input="inputGetPwd">
				<text :class="isPwd ? 'iconfont icon-yincang1 ic-pwd-status' : 'iconfont icon-yincang ic-pwd-status'" @click="clickSwtich"></text>
				<text class="iconfont icon-yuechi ic-user"></text>
			</view>
			
		</dialog-shell>
	</view>
</template>

<script>
	export default {
		name:"login-dialog",
		data() {
			return {
				isPwd:true,
				pwdValue:"",
				usrValue:""
			};
		},
		mounted(){
			let userInfo = uni.getStorageSync("userLoginInfo")
			if(userInfo){
				this.usrValue = userInfo.username
				this.pwdValue = userInfo.password
			}
		},
		methods:{
			clickGoRegister(){
				uni.navigateTo({
					url: '../../pages/register/register',
					success: res => {
						this.$refs.shell.clickToHide()
					},
					fail: () => {},
					complete: () => {}
				});
			},
			show(){
				this.$refs.shell.show()
			},
			clickSwtich(){
				this.isPwd = !this.isPwd
			},
			inputGetPwd(e){
				this.pwdValue = e.detail.value
			},
			inputGetUser(e){
				this.usrValue = e.detail.value
			},
			confirmLogin(){
				if(this.usrValue.length == 0 || this.pwdValue.length == 0){
					uni.showToast({
						title: '请输入用户名密码！',
						icon:'none'
					});
					return
				}
				let url = this.$params.host + this.$params.action_login
				let data = {
					username : this.usrValue,
					password : this.pwdValue
				}
				this.$request.post(url, data, res => {
				uni.showToast({
						title:res.message,
						icon:'none'
					});
					if(!res.success){
					this.$refs.shell.show()
					this.usrValue = ''
					this.pwdValue = ''
					return
				}
				uni.setStorageSync("userLoginInfo", data)
				let app = getApp()
				app.globalData.uid = res.data.id
				app.globalData.token = res.data.token
				app.globalData.avatar = res.data.avatar
				app.globalData.type = res.data.type
				app.globalData.userName = res.data.userName
				app.globalData.nickName = res.data.nickName
				app.globalData.email = res.data.email
				console.log(app.globalData);
				this.$emit("after")
				},() => {})
			}
		}
	}
</script>

<style>
@import url("login-dialog.css");
</style>